package com.huawei.hms.support.api.iap.json;

import android.content.Intent;
import com.huawei.hms.support.api.entity.iap.ConsumePurchaseReq;
import com.huawei.hms.support.api.entity.iap.GetBuyIntentReq;
import com.huawei.hms.support.api.entity.iap.GetBuyIntentWithPriceReq;
import com.huawei.hms.support.api.entity.iap.GetPurchaseReq;
import com.huawei.hms.support.api.entity.iap.SkuDetailReq;
import com.huawei.hms.support.api.iap.BuyResultInfo;
import com.huawei.hms.support.api.iap.ConsumePurchaseResult;
import com.huawei.hms.support.api.iap.GetBuyIntentResult;
import com.huawei.hms.support.api.iap.GetPurchasesResult;
import com.huawei.hms.support.api.iap.IsBillingSupportedResult;
import com.huawei.hms.support.api.iap.SkuDetailResult;
import o.fjo;

public interface IapClient {
    fjo<ConsumePurchaseResult> consumePurchase(ConsumePurchaseReq consumePurchaseReq);

    fjo<GetBuyIntentResult> getBuyIntent(GetBuyIntentReq getBuyIntentReq);

    fjo<GetBuyIntentResult> getBuyIntentWithPrice(GetBuyIntentWithPriceReq getBuyIntentWithPriceReq);

    BuyResultInfo getBuyResultInfoFromIntent(Intent intent);

    fjo<GetPurchasesResult> getPurchaseHistory(GetPurchaseReq getPurchaseReq);

    fjo<GetPurchasesResult> getPurchases(GetPurchaseReq getPurchaseReq);

    fjo<SkuDetailResult> getSkuDetail(SkuDetailReq skuDetailReq);

    fjo<IsBillingSupportedResult> isBillingSupported();
}
